// pages/community/community.js
Page({
  data: {
    searchKeyword: '',
    currentCategory: 'all',
    categories: [
      { id: 'all', name: '全部' },
      { id: 'exercise', name: '运动健身' },
      { id: 'diet', name: '饮食营养' },
      { id: 'sleep', name: '睡眠管理' },
      { id: 'mental', name: '心理健康' },
      { id: 'medical', name: '医疗保健' }
    ],
    posts: [
      {
        id: 1,
        title: '每天坚持晨跑30分钟，身体状态越来越好！',
        content: '分享一下我的晨跑心得，坚持了3个月，体重减了10斤，精神状态也好了很多。推荐大家也试试晨跑，真的很有效果！',
        author: {
          name: '健康达人小李',
          avatar: ''
        },
        category: '运动健身',
        createTime: '2小时前',
        images: ['', ''],
        likes: 128,
        comments: 23,
        isLiked: false
      },
      {
        id: 2,
        title: '营养师推荐的减脂餐搭配',
        content: '最近在营养师指导下调整饮食，分享一些减脂餐的搭配心得。早餐：燕麦+牛奶+水果，午餐：鸡胸肉+蔬菜+糙米，晚餐：鱼肉+蔬菜沙拉。',
        author: {
          name: '营养小助手',
          avatar: ''
        },
        category: '饮食营养',
        createTime: '5小时前',
        images: [''],
        likes: 89,
        comments: 15,
        isLiked: true
      },
      {
        id: 3,
        title: '改善睡眠质量的小技巧',
        content: '最近睡眠质量提升了很多，分享几个小技巧：1.睡前1小时不看手机 2.保持房间温度在18-22度 3.睡前喝杯温牛奶 4.使用遮光窗帘',
        author: {
          name: '睡眠专家',
          avatar: ''
        },
        category: '睡眠管理',
        createTime: '1天前',
        images: [],
        likes: 156,
        comments: 32,
        isLiked: false
      },
      {
        id: 4,
        title: '瑜伽初学者的入门指南',
        content: '刚开始练瑜伽的朋友们，推荐从基础动作开始：山式、下犬式、婴儿式。每天练习20-30分钟，坚持一个月就能感受到身体的变化。',
        author: {
          name: '瑜伽老师Amy',
          avatar: ''
        },
        category: '运动健身',
        createTime: '2天前',
        images: ['', '', ''],
        likes: 203,
        comments: 45,
        isLiked: true
      }
    ],
    hasMore: true
  },

  onLoad() {
    this.loadPosts()
  },

  // 搜索输入
  onSearchInput(e) {
    this.setData({
      searchKeyword: e.detail.value
    })
    // 实际项目中这里会调用搜索API
    this.searchPosts(e.detail.value)
  },

  // 搜索帖子
  searchPosts(keyword) {
    if (!keyword.trim()) {
      this.loadPosts()
      return
    }
    // 模拟搜索结果
    const filteredPosts = this.data.posts.filter(post => 
      post.title.includes(keyword) || post.content.includes(keyword)
    )
    this.setData({
      posts: filteredPosts
    })
  },

  // 选择分类
  selectCategory(e) {
    const categoryId = e.currentTarget.dataset.id
    this.setData({
      currentCategory: categoryId
    })
    this.loadPostsByCategory(categoryId)
  },

  // 根据分类加载帖子
  loadPostsByCategory(categoryId) {
    // 模拟根据分类筛选帖子
    if (categoryId === 'all') {
      this.loadPosts()
    } else {
      const categoryName = this.data.categories.find(cat => cat.id === categoryId)?.name
      const filteredPosts = this.data.posts.filter(post => post.category === categoryName)
      this.setData({
        posts: filteredPosts
      })
    }
  },

  // 加载帖子
  loadPosts() {
    // 实际项目中这里会调用API获取帖子数据
    // 这里使用模拟数据
  },

  // 跳转到发布页面
  goToPublish() {
    wx.showToast({
      title: '发布功能开发中',
      icon: 'none'
    })
  },

  // 跳转到帖子详情
  goToPostDetail(e) {
    const postId = e.currentTarget.dataset.id
    wx.showToast({
      title: `查看帖子${postId}详情`,
      icon: 'none'
    })
  },

  // 点赞/取消点赞
  toggleLike(e) {
    e.stopPropagation()
    const postId = e.currentTarget.dataset.id
    const posts = this.data.posts.map(post => {
      if (post.id === postId) {
        return {
          ...post,
          isLiked: !post.isLiked,
          likes: post.isLiked ? post.likes - 1 : post.likes + 1
        }
      }
      return post
    })
    this.setData({ posts })
  },

  // 预览图片
  previewImage(e) {
    e.stopPropagation()
    const src = e.currentTarget.dataset.src
    const urls = e.currentTarget.dataset.urls
    wx.previewImage({
      current: src,
      urls: urls
    })
  },

  // 下拉刷新
  onPullDownRefresh() {
    this.loadPosts()
    wx.stopPullDownRefresh()
  },

  // 上拉加载更多
  onReachBottom() {
    if (this.data.hasMore) {
      // 模拟加载更多
      wx.showToast({
        title: '加载更多功能开发中',
        icon: 'none'
      })
    }
  },

  onShareAppMessage() {
    return {
      title: '迷你健康社区 - 分享健康生活',
      path: '/pages/community/community'
    }
  }
})